package com.zg.scf.domain.req.account;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.zg.common.core.req.PageReq;
import com.zg.common.core.dao.QueryCondition;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.util.Date;

/**
 * DESCRIPTION
 *
 * @author zhanfeng.liang
 * @since 2025-07-14
 */

@Data
@ApiModel(value = "账户信息PageReq")
public class AccAccountPageReq extends PageReq {

    /**
     * 企业名称，对应表中 COMPANY_NAME 字段，类型 VARCHAR2(255)
     */
    @ApiModelProperty(value = "企业名称")
    private String companyName;

    /**
     * 企业ID，对应表中 COMPANY_ID 字段，类型 NUMBER
     */
    @ApiModelProperty(value = "企业ID")
    private Long companyId;

    /**
     * 银行ID，对应表中 BANK_ID 字段，类型 NUMBER
     */
    @ApiModelProperty(value = "银行ID")
    private Long bankId;

    /**
     * 银行账号，对应表中 BANK_ACCOUNT 字段，类型 VARCHAR2(255)
     */
    @ApiModelProperty(value = "银行账号")
    private String bankAccount;

    /**
     * 账户类型，对应表中 ACCOUNT_TYPE 字段，类型 VARCHAR2(100)
     */
    @ApiModelProperty(value = "账户类型")
    @QueryCondition
    private String accountType;

    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
    private Date beginTime;

    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
    private Date endTime;

    @ApiModelProperty(value = "状态")
    private String  state;

    private Integer sort;
}
